package com.zs.zcerp.approval.entity;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import java.io.Serializable;
import java.util.Date;

/**
 * ${comments}
 *
 * @author Henry
 * @date 2021-04-21 20:58:15
 */
@Data
@TableName("QH_CHKMGR_D")
public class QhChkmgrdEntity implements Serializable {
	private static final long serialVersionUID = 1L;

	/**
	 *组织机构id
	 */

	@NotNull(message = "{required}")
	@TableId("ORG_ID")
	private Integer orgId ;


	@TableField(exist = false)
	private String orgName;

	/**
	 * 核检id唯一
	 */
	@TableField("CHKMGR_ID")
	private Long  chkmgrId;

	/**
	 * 流程序号 1.0---8.0
	 * */
	@TableField("FLOW_SEQ")
	private Integer flowSeq;

	/**
	 * 签核角色
	 * 厂务主管， 企划主管 等等。。
	 */
	@TableField("FLOW_DESC")
	private String flowDesc;

	/**
	 * $column.comments
	 */
	@TableField("ORG_TOUSER")
	private Integer orgTouser;

	/**
	 * 用户邮箱
	 */
	@TableField("TO_MAIL")
	private String toMail;



	/**
	 * 签核签人员工号
	 */
	@TableField("TO_USER")
	private String toUser;
	/**
	 * 签核人员中文名字
	 */
	@TableField("TO_USER_CNAME")
	private String toUserCname;

	/**
	 * $column.comments
	 */
	@TableField("PLAN_ETIME")
	@JsonFormat(pattern="yyyy-MM-dd",timezone="GMT+8")
	@DateTimeFormat(pattern = "yyyy-MM-dd")
	private Date planEtime;

	/**
	 * 签核人员时间
	 */
	@TableField("FACT_ETIME")
	@JsonFormat(pattern="yyyy-MM-dd HH:mm",timezone="GMT+8")
	@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
	private Date factEtime;

	/**
	 * $column.comments
	 */
	@TableField("DELAY_TIME")
	private Integer delayTime;

	/**
	 * $column.comments
	 */
	@NotNull(message = "{required}")
	@TableField("NOTE_ID")
	private Integer noteId;

	/**
	 * 送签时间
	 * 初始创建单据时间 erp同步过来
	 */
	@TableField("SEND_DATE")
	@JsonFormat(pattern="yyyy-MM-dd HH:mm",timezone="GMT+8")
	@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
	private Date sendDate;

	/**
	 * $column.comments
	 */
	@TableField("READ_DATE")
	@JsonFormat(pattern="yyyy-MM-dd",timezone="GMT+8")
	@DateTimeFormat(pattern = "yyyy-MM-dd")
	private Date readDaate;

	/**
	 * $column.comments
	 */
	@TableField("ORG_CHKUSER")
	private Integer orgChkuser;

	/**
	 * 签核人员(签核角色)
	 */
	@TableField("CHK_USER")
	private String chkUser;

	/**
	 * 签核时间
	 */
	@TableField("CHK_DATE")
	@JsonFormat(pattern="yyyy-MM-dd HH:mm",timezone="GMT+8")
	@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
	private Date chkDate;

	/**
	 * 备注
	 */
	@TableField("REMARK")
	private String remark;

	/**
	 * $column.comments
	 */
	@TableField("RTN_FLOW")
	private Integer rtnFlow;

	/**
	 * 下一个流程序号
	 */
	@TableField("NEXT_FLOW")
	private Integer nextFlow;

	/**
	 * $column.comments
	 */
	@TableField("ORG_NEXTUSER")
	private Integer orgNextuser;

	/**
	 * 下一个流程节点 签核人
	 */
	@TableField("NEXT_USER")
	@NotBlank(message = "{required}")
	private String nextUser;

	/**
	 * 是否最后签核 Y是最后  N前面
	 */
	@TableField("IS_LAST")
	@NotBlank(message = "{required}")
	private String isLast;

	/**
	 * 签核状态 1 待签核  2 已经签核
	 */
	@TableField("CHK_STATUS")
	@NotNull(message = "{required}")
	private Integer chkStatus;

	@TableField(exist = false)
	private String chkStatusName;

	/**
	 * 单据编号
	 */
	@TableField("ORDER_NO")
	@NotBlank(message = "{required}")
	private String orderNo;

	/**
	 * 1
	 */
	@TableField("ITEM_TYPE")
	private String itemType;

	/**
	 * $column.comments
	 */
	@TableField("VEND_NO")
	private String vendNo;

	/**
	 * 审核意见
	 */
	@TableField("CHK_OK")
	private String chkOk;

	@TableField(exist = false)
	private String createTimeFrom;

	@TableField(exist = false)
	private String createTimeTo;
	/**
	 * 送核人员工号
	 */
	@NotBlank(message = "{required}")
	@TableField(exist = false)
	private String grtUser;

	/**
	 * 送核人员名字
	 */
	@NotBlank(message = "{required}")
	@TableField(exist = false)
	private String grtUserCname;



	/**
	 * 送签流程编码
	 */
	@NotBlank(message = "{required}")
	@TableField(exist = false)
	private String basestdNo;

	/**
	 * 单据分类
	 *
	 */
	@NotBlank(message = "{required}")
	@TableField(exist = false)
	private String billstdNo;
	/**
	 *  当前用户
	 */
	@TableField(exist = false)
	private String currentUser;

	/**类型分类排序
	 *  标准报表：destoryType =SE_Y,  按(部位 部门 )排序
	 *  AD报表：  destoryType =SE_Y,  brandNo =AD   按(品牌，线别)排序
	 *物料报表   destoryType =SE_N,   按 (物料编码)排序
	 * 物料报表   destoryType =SE_N,   按 (材片)排序
	 *
	 * */
	@TableField(exist = false)
	private String destoryType;

	/**类型分类 */
	@TableField(exist = false)
	private String brandNo;



	/**流程名字*/
	@TableField(exist = false)
	private String flowName;





}
